<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    var obj = {
      a:10
    }
    var abcd = 10
    // Object.defineProperty() 可以定义没有属性或者存在属性
    Object.defineProperty(obj,'a',{
      get:function(){ // getter（获取的拦截器）
        console.log('a属性获取了')
        return abcd
      },
      set:function(newVal){  // setter （设置拦截器）
      
        console.log('a属性设置了新值是'+newVal)
        abcd = newVal
      }
    })
    console.log(obj.a)
    obj.a = 100
    console.log(obj.a) 
  </script>
</body>
</html>
